function [x, k] = gseidel(A, b, error, m, x0)

	if det(A) != 0
		
		k = 0; 
		N = triu(A);
		P = N - A;
		M = inv(N) * P;
		C = inv(N) * b;
		x = (M * x0) + C;	
		
		while (norm(x-x0,inf) > error) && (k < m)
	
			x0 = x;
			x = (M * x0) + C;
			++k;
		end
	else
		fprintf('ERROR, la matriz ingresada es singular!!, pruebe con otra\n')
    end
end